package com.love.marriage.TecentIm.service;

import com.love.marriage.TecentIm.vo.*;

import java.util.List;

public interface ChatService {

    String sendMessage(Long fromUser, Long toUser, String message) throws Exception;

    String sendMessageMoney(Long fromUser, Long toUser, String message) throws Exception;

    String withdrawMessage(String fromAccount, String toAccount, String msgKey) throws Exception;

    Boolean sendReadReceipt(Long fromUser, Long toUser, List<ChatReadInfoVo> chatReadInfoVoList) throws Exception;

    ChatListInfoVo getRecentContacts(RecentContactRequest request) throws Exception;

    ChatEachHistoryVo getChatHistory(Long operatorUserId, Long peerUserId, int maxCnt, long maxTime, String lastMsgKey) throws Exception;

    Boolean deleteChatMessages(Long fromUser, Long toUser, List<String> msgKeyList) throws Exception;

    String generateUserSig(Long userId) throws Exception;

    Boolean addNewUser(Long userId) throws Exception;

    List<LocalImChatListVo> getLocalImChatList(Long userId, String page, String limit) throws Exception;

    LocalImChatHistoryVo getLocalImChatHistory(Long userId, Long toUserId, Long endMessageSeq, Integer limit) throws Exception;
}
